Package de.yaams.extensions.rgssproject.map.nevent.command

Source Code of de.yaams.extensions.rgssproject.map.nevent.command.AudioPlayCommand

/**
*
*/
package de.yaams.extensions.rgssproject.map.nevent.command;

import de.yaams.extensions.rgssproject.RTP;
import de.yaams.extensions.rgssproject.database.form.FormMusicEle;
import de.yaams.extensions.rgssproject.map.nevent.core.CommandFormHelper;
import de.yaams.extensions.rgssproject.map.nevent.core.EventCode;
import de.yaams.extensions.rgssproject.map.nevent.core.EventCommand;
import de.yaams.maker.helper.gui.form.FormElement;
import de.yaams.maker.helper.gui.form.FormElementChangeListener;
import de.yaams.maker.helper.gui.form.core.FormBuilder;
import de.yaams.maker.helper.language.I18N;

/**
* @author abt
*
*/
public class AudioPlayCommand extends EventCommand {

  /*
   * (non-Javadoc)
   *
   * @see de.yaams.extensions.map.nevent.core.EventCommand#getIcon()
   */
  @Override
  public String getIcon() {
    return "audio";
  }

  /*
   * (non-Javadoc)
   *
   * @see
   * de.yaams.extensions.map.nevent.core.EventCommand#getIcon(de.yaams.extensions
   * .map.nevent.core.EventCode)
   */
  @Override
  public Object getIcon(EventCode e) {
    return getIcon();
  }

  /*
   * (non-Javadoc)
   *
   * @see de.yaams.extensions.map.nevent.core.EventCommand#getName()
   */
  @Override
  public String getName() {
    return I18N.t("Play music");
  }

  /*
   * (non-Javadoc)
   *
   * @see de.yaams.extensions.map.nevent.core.EventCommand#getGroup()
   */
  @Override
  public String getGroup() {
    return I18N.t("System");
  }

  /*
   * (non-Javadoc)
   *
   * @see de.yaams.extensions.map.nevent.core.EventCommand#getStartParameter()
   */
  @Override
  public String getStartParameter() {
    return "RPG::AudioFile.new()";
  }

  /*
   * (non-Javadoc)
   *
   * @see
   * de.yaams.extensions.map.nevent.core.EventCommand#buildPanel(de.yaams.
   * core.helper.gui.form.core.FormBuilder,
   * de.yaams.extensions.map.nevent.core.EventCode)
   */
  @Override
  public void buildPanel(FormBuilder f, EventCode e) {

    // build panel
    final FormMusicEle m = new FormMusicEle(I18N.t("Play"), e.getYecl().getProject(), getTyp(e.getId()), e.getParameters().get(0));

    // add type
    f.addElement(
        "basic.me",
        CommandFormHelper.buildCodeIdChancer(e, "", new String[] { "249", "250", "245", "241" }, new String[] { "ME", "SE", "BGS",
            "BGM" })).addChangeListener(new FormElementChangeListener() {

      @Override
      public void stateChanged(FormElement form) {
        m.setFolder(getTyp(Integer.valueOf(form.getContentAsString())));

      }
    });

    // add name
    f.addElement("basic.name", m);
  }

  /**
   * Get right folder
   *
   * @param id
   * @return
   */
  protected String getTyp(int id) {
    switch (id) {
    case 249:
      return RTP.ME;
    case 250:
      return RTP.SE;
    case 245:
      return RTP.BGS;
    case 241:
      return RTP.BGM;
    }

    return null;
  }

  /*
   * (non-Javadoc)
   *
   * @see
   * de.yaams.extensions.map.nevent.core.EventCommand#getTitle(de.yaams.extensions
   * .map.nevent.core.EventCode)
   */
  @Override
  protected String getInternTitle(EventCode e) {
    return I18N.t("Spiele {1}: {0}", e.getParameters().get(0).getInstanceVariables().getInstanceVariable("@name"), getTyp(e.getId()));
  }

}
TOP

Related Classes of de.yaams.extensions.rgssproject.map.nevent.command.AudioPlayCommand

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.